﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ZFSDomain.Common.CoreLib.CustomAttrbuter
{
    /// <summary>
    /// 模块类型
    /// </summary>
    public enum ModuleType
    {
        System,
        Business,
    }

    /// <summary>
    /// 模块特性
    /// </summary>
    public class ModuleAttribute : Attribute
    {
        public ModuleAttribute(string code, string name, string namespaces,
            string desc, string authority)
        {

        }

        #region private

        private int _Id;
        private string _Icon;
        private string _Code;
        private string _Name;
        private string _NameSpace;
        private int _Authority;
        private string _Descaption;
        private ModuleType _ModuleType;

        #endregion

        #region 只读属性

        /// <summary>
        /// 序号
        /// </summary>
        public int ID
        {
            get { return _Id; }
        }

        /// <summary>
        /// 图标
        /// </summary>
        public string ICon
        {
            get { return _Icon; }
        }

        /// <summary>
        /// 菜单类
        /// </summary>
        public string Code
        {
            get { return _Code; }
        }

        /// <summary>
        /// 菜单名
        /// </summary>
        public string Name
        {
            get { return _Name; }
        }

        /// <summary>
        /// 命名空间
        /// </summary>
        public string NameSpace
        {
            get { return _NameSpace; }
        }

        /// <summary>
        /// 功能权限值
        /// </summary>
        public int Autority
        {
            get { return _Authority; }
        }

        /// <summary>
        /// 备注
        /// </summary>
        public string Descaption
        {
            get { return _Descaption; }
        }

        /// <summary>
        /// 模块类型
        /// </summary>
        public ModuleType ModuleType
        {
            get { return _ModuleType; }
        }

        #endregion
    }
}
